﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SmartProduction.Domain.Ptoduction
{
    /// <summary>
    /// 生产工单的基本信息表
    /// </summary>
    public class ProductionWorkOrderBasicInfoSheet
    {
        /// <summary>
        /// 基本信息的ID
        /// </summary>
        [Key]
        public int WorkOrderId { get; set; }

        /// <summary>
        /// 工单名称
        /// </summary>
        public string WorkOrderName { get; set; }
        /// <summary>
        /// 工单编号
        /// </summary>
        public string WorkOrderNumber { get; set; }
        /// <summary>
        /// 生产单号
        /// </summary>
        public int AssociatedProductionOrderNumber { get; set; }
        /// <summary>
        /// 销售订单
        /// </summary>
        public string SalesOrder { get; set; }
        /// <summary>
        /// 关联项目
        /// </summary>
        public string AssociatedProject { get; set; }

        /// <summary>
        /// 工单日期
        /// </summary>
        public DateTime WorkOrderDate { get; set; }
        /// <summary>
        /// 负责人
        /// </summary>
        public string PersoninCharge { get; set; }
        /// <summary>
        /// 所属部门
        /// </summary>
        public string AffiliatedDepartment { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public string Remarks { get; set; }
        /// <summary>
        /// 附件
        /// </summary>
        public string? WenJian { get; set; }


        //////////////外键关联字段/////////////

        /// <summary>
        /// 生产物品表ID 外键关联生产物品表
        /// </summary>

        public int? ProductionItemId { get; set; }
        /// <summary>
        /// 工序流程编号 外键关联工序流程表
        /// </summary>
        public int? ProcessFlowSheetId { get; set; }

        //////////////审计字段///////////////

        /// <summary>
        /// 创建人
        /// </summary>
        public string? CreateName { get; set; }
        /// <summary>
        /// 创建时间
        /// </summary>
        public DateTime? CreateTime { get; set; }
        /// <summary>
        /// 修改人
        /// </summary>
        public string? UpdateName { get; set; }
        /// <summary>
        /// 修改时间
        /// </summary>
        public DateTime? UpdateTime { get; set; }

        /// <summary>
        /// 删除标识符
        /// </summary>
        public bool IsDel { get; set; }
    }
}
